package com.season.seasonStudy.javase.j_003_array_collection;

import java.util.Scanner;

/**
 * 数组：
 * 	-------------------生成随机数：(int)(Math.random()*(最大值-最小值)+1)+最小值
 * 	数组类型 类型[]
 * 		类型 变量名;
 * 
 * 	特点:	连续的内存空间(可以多个)
 * 			类型固定,长度固定
 *
 * 			索引从0开始，最大：长度-1
 * 			数组名即是变量名
 * 	内置的一个空间就是元素，使用数组名[索引]
 * 
 * 	声明数组: 类型[] 数组名;
 * 	开空间确定元素个数；数组名=new 类型[长度]
 * 	数组长度:数组名.length
 */

/**
 * 	1.开始就有值的赋值方式：
 * 		int[] score={1,2,3,4,5};
 * 	2.需要手动输入的赋值方式：
 * 		int[] score=new int[5];
 *  	Scanner input=new Scanner(System.in);
 *  	for (int i = 0; i < scores.length; i++) {
 *  		System.out.print("请输入成绩");
 *  		scores[i]=input.nextInt();
 *  	}
 */

/**
 *  易错点：
 *  	1下标越界，索引从0开始，最大：长度-1
 *  
 *  	2使用数组元素去比较：scores[6]
 *  
 *  	3必须一行完成int[] scores={1,2,4,3,2}
 *  
 *  	4 new 后不能写长度：int[] = new int[]{2,3,4,2};
 *  
 *  	5下标越界：ArrayIndexOutOfBoundsException
 *  
 */

/**
 * 声明数组的几种方式
 * 
 * 方式1   String[] arr = new String[5];
 * 
 * 方式2    String[] arr = new String[]{"","",""};
 * 
 * 方式3   String a = "";
 *        String b = "";
 *        String c = "";
 *        String []  arr= {a,b,c}
 */

/**
 * 数组初始化:
 * 	动态初始化
 * 		数组的声明(定义,数组空间分配) 与 为数组元素分配空间,赋值分开
 * 	----------数组得先为其分配空间,然后才能赋值
 * 	静态初始化
 *
 */

public class ArrayDemo {
	public static void main(String[] args) {
		
		int  a=(int) (Math.random() * 3 + 1);
		System.out.println(a);
		
		String[] a1;
		String[] a2 = new String[]{"aa","bb","cc"};
		a1 = a2;
		System.out.println(a1);
		System.out.println(a2);

		
		Scanner input = new Scanner(System.in);
		// int[] scores= new int[]{2,4,6,7};
		// int[] scores= new int[5];
		String[] scores = { "2", "3", "5", "6" };
		scores[4] = "98";
		/*
		 * for (int i = 0; i < scores.length; i++) { System.out.print("请输入成绩：");
		 * scores[i]=input.nextInt(); }
		 */

		for (int i = 0; i < scores.length; i++) {
			System.out.println(scores[i]);
		}
	}
}
